package karaoke.negocio;

	import java.util.Collection;
import karaoke.dao.LocalDAO;
import karaoke.excepcion.DAOExcepcion;
import karaoke.modelo.Empleado;
import karaoke.modelo.Local;


public class GestionLocal {

		public Collection<Local> buscarPorNombre(String nombre)
				throws DAOExcepcion {
			LocalDAO dao = new LocalDAO();
			return dao.buscarPorNombre(nombre);
		}

		public Local insertar(String nombre, String direccion, String telefono, String descripcion, int idPersona)
				throws DAOExcepcion {
			
			LocalDAO dao = new LocalDAO();
			Local vo = new Local();
			
			vo.setNombre(nombre);
			vo.setDireccion(direccion);
			vo.setTelefono(telefono);
			vo.setDescripcion(descripcion);
			vo.setAdministrador(new Empleado(idPersona));
			vo.setEliminado(0);

			return dao.insertar(vo);
		}

		public Local obtener(int codigo) throws DAOExcepcion {
			LocalDAO dao = new LocalDAO();
			return dao.obtener(codigo);
		}

		public void eliminar(int codigo) throws DAOExcepcion {
			LocalDAO dao = new LocalDAO();
			Local vo = new Local();
			vo.setCodigo(codigo);
			vo.setEliminado(1);
			dao.eliminar(vo);
			
		}

		public Local actualizar(int codigo, String nombre, String direccion, String telefono,
			String descripcion) throws DAOExcepcion {
			LocalDAO dao = new LocalDAO();

			Local vo = new Local();
			vo.setCodigo(codigo);
			vo.setNombre(nombre);
			vo.setDireccion(direccion);
			vo.setTelefono(telefono);
			vo.setDescripcion(descripcion);
			

			return dao.actualizar(vo);
		}

		public Collection<Local> listar() throws DAOExcepcion {
			LocalDAO dao = new LocalDAO();
			return dao.listar();
		}

		public Collection<Local> listarLocalesActivos() throws DAOExcepcion {
			LocalDAO dao = new LocalDAO();
			return dao.listarLocalesActivos();
		}		
	}